package com.ck.client.service;

import com.ck.common.model.ProgramDownload;

/**
 * @ClassName ProgramDownloadService
 * @Description 节目下载service
 * @Author HanQinrui
 * @Date 2018/7/19 16:17
 * @Version 1.0
 **/
public interface ProgramDownloadService {
    /**
     * 通过终端code和节目版本号获取下载信息
     * @param deviceCode 终端code
     * @param downloadProgramVersion 节目版本号
     * @return
     */
    ProgramDownload getProgramDownloadByCodeAndXcVersion(String deviceCode, String downloadProgramVersion);

    /**
     * 保存节目下载信息
     * @param programDownload 节目下载信息
     */
    void saveProgramDownload(ProgramDownload programDownload);

    /**
     * 更新节目下载信息
     * @param programDownload
     */
    void updateProgramDownload(ProgramDownload programDownload);

    /**
     * 记录下载失败日志
     * @param deviceCode 终端code
     * @param downloadProgramVersion 节目版本号
     * @param failureReason 失败原因
     */
    void saveDownloadFailLog(String deviceCode, String downloadProgramVersion, String failureReason);
}
